home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_200 / 250_01 / ceil.s < prev    next >
Text File  |  1987-10-27  |  640b  |  35 lines

  1.     .ttl    "ceil.s"
  2.  
  3. * MC68020/MC68881 IEEE Format Single Precision Routines
  4. *
  5. * Written by: Edmund H. Ramm
  6. *
  7. * _ceil entry point for single prec. ceil, operand in 4(sp)
  8. *
  9. *     sp     4
  10. *    ---------------
  11. *    | ret  |  x   |
  12.  
  13.  
  14.     .text
  15.     .globl    _ceil
  16.  
  17.  
  18. _ceil:
  19. *
  20. * on exit, d0 = ceil( 4(sp) )
  21. *
  22.     moveq    #$30,d1
  23. *    fmove.l    d1,fpcr            * select round to +infinity
  24.     dc.w    $f201,$9000
  25. *    fint.s    4(sp),fp0        * fp0 <-- ceil( 4(sp) )
  26.     dc.w    $f22f,$4401,$0004
  27. *    fmove.s    fp0,d0            * d0 <-- ceil(x)
  28.     dc.w    $f200,$6400
  29.     moveq    #0,d1
  30. *    fmove.l    d1,fpcr            * re-select ieee defaults
  31.     dc.w    $f201,$9000
  32.     rts
  33.  
  34.     .end
  35.